1. Field of the Invention
The present invention is in the field of satellite navigation. More specifically, the present invention relates to the field of receiver autonomous integrity monitoring (RAIM) fault detection and exclusion implementation.
2. Discussion of the Prior Art
The Global Positioning System (GPS) is a system of satellite signal transmitters that transmits information from which an observer's present location and/or the time of observation can be determined. Another satellite-based navigation system is called the Global Orbiting Navigational System (GLONASS), which can operate as an alternative or supplemental system.
The GPS was developed by the United States Department of Defense (DOD) under its NAVSTAR satellite program. A fully operational GPS includes more than 24 Earth orbiting satellites approximately uniformly dispersed around six circular orbits with four satellites each, the orbits being inclined at an angle of 55° relative to the equator and being separated from each other by multiples of 60° longitude. The orbits have radii of 26,560 kilometers and are approximately circular. The orbits are non-geosynchronous, with 0.5 sidereal day (11.967 hours) orbital time intervals, so that the satellites move with time relative to the Earth below. Generally, four or more GPS satellites will be visible from most points on the Earth's surface, which can be used to determine an observer's position anywhere on the Earth's surface. Each satellite carries a cesium or rubidium atomic clock to provide timing information for the signals transmitted by the satellites. An internal clock correction is provided for each satellite clock.
Each GPS satellite continuously transmits two spread spectrum, L-band carrier signals: an L1 signal having a frequency f1=1575.42 MHz (approximately nineteen centimeter carrier wavelength) and an L2 signal having a frequency f2=1227.6 MHz (approximately twenty-four centimeter carrier wavelength). These two frequencies are integral multiplies f1=1,540 f0 and f2=1,200 f0 of a base frequency f0=1.023 MHz. The L1 signal from each satellite is binary phase shift key (BPSK) modulated by two pseudo-random noise (PRN) codes in phase quadrature, designated as the C/A-code and P-code. The L2 signal from each satellite is BPSK modulated by only the P-code. The nature of these PRN codes and accepted methods for generating the C/A-code and P-code are set forth in the document ICD-GPS-200: GPS Interface Control Document, ARINC Research, 1997, GPS Joint Program Office, which is incorporated by reference herein.
The GPS satellite bit stream includes navigational information on the ephemeris of the transmitting GPS satellite (which includes orbital information about the transmitting satellite within next several hours of transmission) and an almanac for all GPS satellites (which includes a less detailed orbital information about all satellites). The transmitted satellite information also includes parameters providing corrections for ionospheric signal propagation delays (suitable for single frequency receivers) and for an offset time between satellite clock time and true GPS time. The navigational information is transmitted at a rate of 50 Baud.
A second satellite-based navigation system is the Global Orbiting Navigation Satellite System (GLONASS), placed in orbit by the former Soviet Union and now maintained by the Russian Republic. GLONASS uses 24 satellites, distributed approximately uniformly in three orbital planes of eight satellites each. Each orbital plane has a nominal inclination of 64.8° relative to the equator, and the three orbital planes are separated from each other by multiples of 120° longitude. The GLONASS satellites have circular orbits with a radii of about 25,510 kilometers and a satellite period of revolution of {fraction (8/17)} of a sidereal day (11.26 hours). A GLONASS satellite and a GPS satellite will thus complete 17 and 16 revolutions, respectively, around the Earth every 8 days. The GLONASS system uses two carrier signals L1 and L2 with frequencies of f1=(1.602+9 k/16) GHz and f2=(1.246+7 k/16) GHz, where k=(1, 2, . . . 24) is the channel or satellite number. These frequencies lie in two bands at 1.597-1.617 GHz (L1) and 1,240-1,260 GHz (L2). The L1 signal is modulated by a C/A-code (chip rate=0.511 MHz) and by a P-code (chip rate=5.11 MHz). The L2 signal is presently modulated only by the P-code. The GLONASS satellites also transmit navigational data at a rate of 50 Baud. Because the channel frequencies are distinguishable from each other, the P-code is the same, and the C/A-code is the same, for each satellite. The methods for receiving and demodulating the GLONASS signals are similar to the methods used for the GPS signals. Reference to a Satellite Positioning System or SATPS herein refers to a Global Positioning System, to a Global Orbiting Navigation System, and to any other compatible satellite-based system that provides information by which an observer's position and the time of observation can be determined, all of which meet the requirements of the present invention.
A Satellite Positioning System (SATPS), such as the Global Positioning System (GPS) or the Global Orbiting Navigation Satellite System (GLONASS), uses transmission of coded radio signals, with the structure described above, from a plurality of Earth-orbiting satellites. An SATPS antenna receives SATPS signals from a plurality (preferably four or more) of SATPS satellites and passes these signals to an SATPS signal receiver/processor, which (1) identifies the SATPS satellite source for each SATPS signal, (2) determines the time at which each identified SATPS signal arrives at the antenna, and (3) determines the present location of the SATPS satellites.
The range (ri) between the location of the i-th SATPS satellite and the SATPS receiver is equal to the speed of light c times (Δti), wherein (Δti) is the time difference between the SATPS receiver's clock and the time indicated by the satellite when it transmitted the relevant phase. However, the SATPS receiver has an inexpensive quartz clock which is not synchronized with respect to the much more stable and precise atomic clocks carried on board the satellites. Consequently, the SATPS receiver estimates a pseudo-range (pri) (not a true range) to each satellite.
After the SATPS receiver determines the coordinates of the i-th SATPS satellite by demodulating the transmitted ephemeris parameters, the SATPS receiver can obtain the solution of the set of the simultaneous equations for its unknown coordinates (x0, y0, z0) and for unknown time bias error (cb). The SATPS receiver can also determine velocity of a moving platform.
The given above discussion assumes that a satellite navigational system used for the navigation purposes is functioning properly. GPS satellites are designed to provide users with warnings of satellite malfunctions. However, sometimes, the warnings may take more than 5 minutes before the user is aware of a malfunction. Aviation applications require a more timely notification of a satellite failure condition. Thus, a means to independently monitor satellite integrity is required.
One of these means is receiver autonomous integrity monitoring (RAIM). The RAIM method is based on a self-consistency check among the available measurements. The RAIM consistency check uses redundant measurements as a means to determine GPS integrity. The discussion given below can be found in “Global Positioning System: Theory and Applications”, Volume II, chapter 5, by Bradford W. Parkinson and James J. Spilker Jr., published by the American Institute of Aeronautics and Astronautics, Inc. in 1996.
There are two main approaches to RAIM (not considering several hybrid approaches). In the first main method, the snapshot scheme, only current redundant measurements are used for the self-consistency check. In the second main method, the averaging or filtering scheme, both past and present measurements are used in the RAIM decision.
The theoretical foundation for RAIM is statistical detection theory. Two hypothetical-testing questions are posed: (1) Does a failure exist? and (2) If so, which is the failed satellite? The basic assumption is that there is only one failed satellite at a time. Determination of which satellite has failed is more difficult than a simple failure detection, and it requires more measurement redundancy.
In a basic snapshot RAIM scheme the noisy redundant range-type measurements are available at a given sample point in time. It is convenient to use the six-satellites-in-view-case as an example, that is the number of satellites in view n=6. The generalization to n=5 or n>6 is fairly obvious.
In a range comparison method for six satellites there are six linearized over-determined equations in four unknowns. If there is no noise, one can solve the first four equations to obtain a solution that satisfies the first four equations. The resulting solution can be used to predict the remaining two measurements, and the predicted values can be compared with the actual measured values. If the two differences (residuals) are small, the detection algorithm detects “no failure”. On the other hand, if either or both of the residuals are large, it declares “failure”. The notion of “small” and “large” are defined by deciding whether the typical sample point lies inside or outside the decision boundary in the two-dimensional test statistic plane. This is the essence of the range comparison method.
In the least-squares-residuals RAIM method for the same six-in-view satellites example, one obtains the least squares “solution” for six equations in four unknowns. The least-squares solution can be used to predict the six measurements. Six residuals are then grouped together as a six-to-one vector in the measurement domain. The linear transformation takes the range measurement into the resulting residual vector. The sum of the squares of the residuals plays the role of the basic nonnegative scalar observable in the least-squares-residuals RAIM method. The positive semi-infinite real line can be partitioned into two parts, one for “no failure”, and the other for “failure”. The dividing point is called the threshold. In this method one can use a constant alarm-rate strategy by precalculating the thresholds (partitions) that yield the desired alarm rate for the various anticipated values of n. (In general, n is equal to the number of measurements). Then the real-time algorithm sets the threshold appropriately. For the zero-mean Gaussian assumption the sum of the squares of the residuals has an unnormalized chi-square distribution with (n−4) degrees of freedom. One can use chi-square statistics to find the threshold based on false alarm rate and missed detection rate for the n− number of measurements used. The sum of the squares of the residuals, which is a scalar, is used as the test statistic which is compared to the threshold. Thus, the least-squares-residuals RAIM method is easy to implement because its test statistic is a scalar, regardless of the number n of measurements used.
The RAIM parity method is more formal and less heuristic than either the range comparison method or the least-squares-residuals method. In this method, for the same six-in-view satellites example, the measurement vector is linearly transformed. The upper partitioned part of the transformation yields the usual least-squares solution. The lower partitioned is called the parity vector. For simple detection, one can obtain all the information about the parity vector by looking at its magnitude, or its magnitude squared. Thus, in the parity method, the test statistic for detection reduces to a simple scalar, as was the case with the least-squares-residuals method. The least-squares-residuals method and the parity method lead to identical observables, and with similar threshold settings, yield identical results. It can be shown, that the range-comparison space can be mapped to parity space. Thus, all three methods yield the same results.
Another RAIM implementation is the maximum separation of solution RAIM method. If there are n satellites in view, one can consider the n subset solutions obtained by omitting one satellite at a time from the full set. If a failure exists, the failed satellite is omitted from one of the subsets, and the solution thus obtained is declared a “good” solution. All other subsets contain the failed satellite, and they are in error to various degrees. If the pseudorange error in the failed satellite gradually increases with time, one would expect the subset solutions to begin to spread apart with time, and the maximum separation observed among the n solutions can be used as a measure of the solutions spread. The “good ” solution remains near truth, because it does not contain the failed satellite. If there is no failure present, the solutions should remain grouped around the true position. Thus, the maximum observed solution separation in the horizontal plane can be used as a scalar and nonnegative test statistic. The “no-failure” decision is separated from the “failure” decision with some detection probability by the threshold that can be set by utilizing the relationship between the radial error and the radial-error-protection level. The detection probability varies with satellite geometry. However, this method is not implemented in the prior art satellite receivers.
In the constant-detection-rate/variable-protection-level method, a snapshot RAIM scheme differs significantly from the four methods described above. In this method, the parity vector is used as the basic test statistic, and a threshold is set to yield the desired constant alarm rate. To keep the detection probability constant, as the satellite geometry varies, the smallest radial error, or the protection radius, is used as a failure criterion. The protection radius can be calculated, in real time, on an essentially continuous basis. When the protection radius exceeds the specified alarm limit, the alarm should be triggered, which would indicate the inadequate satellite geometry. On the other hand, if the test statistic exceeds the threshold, the alarm also would be triggered. If this is the case, the alarm would be indicative of a satellite malfunction. In either of those situations, an airplane should be equipped with an alternative source of navigation when the satellite-based navigation fails. This is called a GPS supplementary navigation. One type of the supplementary navigation of an airplane (if the test statistic exceeds the threshold) can be performed by using a satellite-calibrated barometric altimeter data (baro-data), as fully disclosed in the U.S. Pat. No. 6,281,836, issued to Lupash et al. An airplane navigation system can perform the supplementary navigation by supplementing the GPS satellite data with the GLONASS-derived data, or with pseudolite-derived data, etc. Thus, if there are sufficient number of supplementary measurements available, the airplane navigation system could exclude the faulty GPS satellite data and still perform sufficiently precise navigation.
However, in order to isolate the faulty satellite data, the satellite navigation system at first has to determine if there are sufficient number of supplementary measurements available, so that the airplane navigation system could perform the RAIM fault exclusion function.
Thus, what is needed is develop a method to determine whether the RAIM fault detection and exclusion function (FDE) is available before the actual RAIM fault detection and exclusion process can be performed for the RAIM snapshot implementation.